package com.geniusk.system.model.bo.user;

import lombok.Data;

import javax.validation.constraints.*;

/**
 * 修改用户信息BO
 */
@Data
public class UpdateUserBO {

    /**
     * 用户ID
     */
    @NotNull(message = "用户ID不能为空")
    @Min(value = 1, message = "用户ID不能小于1")
    private Long userId;

    /**
     * 组织ID
     */
    @Min(value = 1, message = "组织ID不能小于1")
    private Long groupId;

    /**
     * 用户账号
     */
    @NotBlank(message = "用户账号不能为空")
    @Pattern(regexp = "^[a-zA-Z0-9]{5,20}$", message = "用户账号为5-20位数字和字母组合")
    private String username;

    /**
     * 姓名
     */
    @NotBlank(message = "姓名不能为空")
    @Pattern(regexp = "^[\\u4e00-\\u9fa5]{2,10}$", message = "姓名不正确")
    private String name;

    /**
     * 性别(0男，1女，2未知)
     */
    @NotBlank(message = "性别不能为空")
    @Pattern(regexp = "^0$|^1$|^2$", message = "性别不正确")
    private String sex;

    /**
     * 手机号
     */
    @NotBlank(message = "手机号不能为空")
    @Pattern(regexp = "^1\\d{10}$", message = "手机号不正确")
    private String phoneNumber;

    /**
     * 邮箱
     */
    @Email(message = "邮箱不正确")
    private String email;

    /**
     * 状态(1正常，0停用)
     */
    @NotBlank(message = "状态不能为空")
    @Pattern(regexp = "^1$|^0$", message = "状态不正确")
    private String status;

    /**
     * 角色ID
     */
    private Long[] roleIds;
}

